home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / t3_1 / sources.lha / sources / comp / build / oload.t < prev    next >
Encoding:
Text File  |  1988-02-05  |  2.5 KB  |  63 lines

  1. (herald oload (env tsys))
  2.  
  3. (let ((oenv (make-locale standard-env 'orbit-env)))
  4.   (*define standard-env 'orbit-env oenv)
  5.  
  6.   (*define t-implementation-env 'orbit-env oenv)
  7.  
  8.   (*define oenv 'load-orbit
  9.     (lambda system
  10.       (let ((os (if (null? system) 
  11.                     ((*value t-implementation-env 'os-type)
  12.                      ((*value t-implementation-env 'local-os)))
  13.                     (car system)))
  14.             (processor (if (null? system) 
  15.                            ((*value t-implementation-env 'processor-type)
  16.                             ((*value t-implementation-env 'local-processor)))
  17.                            (cadr system))))
  18.         (load '(build orbit_files) oenv)
  19.         (walk (lambda (f) (load f oenv)) (*value oenv '*orbit-files*))
  20.         (walk (lambda (f) (load f oenv)) (*value oenv '*top-files*))
  21.         (walk (lambda (f) (load f oenv)) (*value oenv '*front-files*))
  22.         (walk (lambda (f) (load f oenv)) (*value oenv '*back-end-files*))
  23.         (xcase processor
  24.           ((mc68000)
  25.            (walk (lambda (f) (load f oenv)) (*value oenv '*orbit-m68-files*)))
  26.           ((vax11)
  27.            (walk (lambda (f) (load f oenv)) (*value oenv '*orbit-vax-files*))))
  28.         (walk (lambda (f) (load f oenv)) (*value oenv '*tas-files*))
  29.         (xcase processor
  30.           ((mc68000)
  31.            (walk (lambda (f) (load f oenv)) (*value oenv '*tas-m68-files*)))
  32.           ((vax11)
  33.            (walk (lambda (f) (load f oenv)) (*value oenv '*tas-vax-files*))))
  34.         (load (xcase os
  35.                 ((aegis) '(back_end aem68gen))
  36.                 ((unix)
  37.                  (xcase processor
  38.                    ((mc68000) '(back_end unm68gen))
  39.                    ((vax11) '(back_end unvaxgen)))))
  40.               orbit-env)
  41.         (xcase processor
  42.             ((mc68000)
  43.              (load-quietly            '(t3_primops mconstants) oenv)
  44.              ((*value oenv 'orbit-m68-init) 't3_primops))
  45.             ((vax11)
  46.              (load-quietly            '(t3_primops vconstants) oenv)
  47.              ((*value oenv 'orbit-vax-init) 't3_primops)))
  48.         (*define t-implementation-env 'comfile (*value oenv 'comfile))
  49.     (*define standard-env 'compile (*value oenv 'orbit))
  50.         (walk (lambda (sym)
  51.                 (*define standard-env sym (*value oenv sym)))
  52.               '(cl 
  53.                 listing
  54.                 orbit 
  55.                 comfile 
  56.                 compile-file 
  57.                 comfile2 
  58.                 tc-syntax-table
  59.                 make-empty-early-binding-locale
  60.                 )))))
  61.  
  62.     oenv)
  63.